#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @FileName  :Functional Programming.py
# @Time      :2021/3/11 15:30
# @Author    :Letquit
"""
文件说明：函数式编程
函数是Python内建支持的一种封装，我们通过把大段代码拆成函数，通过一层一层的函数调用，就可以把复杂任务分解成简单的任务，
这种分解可以称之为面向过程的程序设计。函数就是面向过程的程序设计的基本单元
函数式编程就是一种抽象程度很高的编程范式，纯粹的函数式编程语言编写的函数没有变量，
因此，任意一个函数，只要输入是确定的，输出就是确定的，这种纯函数我们称之为没有副作用。
而允许使用变量的程序设计语言，由于函数内部的变量状态不确定，同样的输入，可能得到不同的输出，
因此，这种函数是有副作用的
函数式编程的一个特点就是，允许把函数本身作为参数传入另一个函数，还允许返回一个函数！
"""
# 举例


def plus(a, b):    # a+b
    return a + b


def compose(func, array):   # func是形参
    return func(array[0], array[1])    # 进行func操作


result = compose(plus, [1, 2])  # 即为对[1, 2]进行plus操作
print(result)


if __name__ == "__main__":
    run_code = 0
